package com.sg.dto.integration.app;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @desc ImplementAddObjectiveDivReviseChangeColComReqDto
 * @使用场景
 */
@Data
public class ImplementAddObjectiveDivReviseChangeColComReqDto
        extends BaseDto
        implements Serializable {

    /**
     * 指标扩展规划设置ID
     */
    @NotNull(message = "指标扩展规划设置ID不能为空")
    @ApiModelProperty("指标扩展规划设置ID")
    private String objectivePlanningExtendId;

    /**
     * 归属指标ID
     */
    @NotNull(message = "归属指标ID不能为空")
    @ApiModelProperty("归属指标ID")
    private String objectiveId;

    /**
     * 本级是否向下分工 TRUE:是 FALSE:否
     */
    @NotNull(message = "修订前本级是否向下分工不能为空")
    @ApiModelProperty("修订前本级是否向下分工")
    private String createLowerIndicator;

    /**
     * 本级向下分工责任主体类型 PERSONAL:个人 DEPT:部门
     */
    @NotNull(message = "修订前本级向下分工责任主体类型不能为空")
    @ApiModelProperty("修订前本级向下分工责任主体类型")
    private String subordinateDivBodyType;

    /**
     * 修订后本级是否向下分工
     */
    @NotNull(message = "修订后本级是否向下分工不能为空")
    @ApiModelProperty("修订后本级是否向下分工")
    private String reviseCreateLowerIndicator;

    /**
     * 修订后本级向下分工责任主体类型
     */
    @NotNull(message = "修订后本级向下分工责任主体类型不能为空")
    @ApiModelProperty("修订后本级向下分工责任主体类型")
    private String reviseSubordinateDivBodyType;

    /**
     * 冗余评价模板ID
     */
    @NotNull(message = "冗余评价模板ID不能为空")
    @ApiModelProperty("冗余评价模板ID")
    private String evaluationTemplateId;

    /**
     * 批次标识
     */
    @NotNull(message = "批次标识不能为空")
    @ApiModelProperty("批次标识")
    private String batchCode;

    /**
     * 批次现状
     */
    @NotNull(message = "批次现状不能为空")
    @ApiModelProperty("批次现状")
    private String batchCurrentStatus;

}
